JSP,<form>表单传参数问题?

来源:百度知道 编辑:UC知道 时间:2024/06/23 02:50:51
<form action="123.jsp?id=1" method="get" name="myform">
<input type="submit" value="fsdfs">
</form>

现在必须用提交按钮传一个参数,但是参数又不能写在表单里,所以要把id的值传到123.jsp页面上,但是在123页面获取的时候,值为NULL。这是为什么啊?

request.getParameter("id"); 搞不到?不会吧?

一般向你这种需求都去写影藏表单域
在页面上加上<input type="hidden" name="名字" value="你要传的ID值">
按钮就是个普通按钮写onClick方法
在方法里得到你影藏表单域的值,
var id = document.getElementById("影藏表单域的名字").value;
改变你表单的action,
document.getElementById("表单名字").action=="123.jsp?id="+id;
提交表单
document.getElementById("表单名字").submit();

好了,用隐藏域吧
在表单中潜入标签:
<input type="hidden" name="par" value="写你要提交的参数"/>
此标签不会在本页中显示出来,也不会占用网页空间
在123.jsp页面上写脚本:request.getParameter("par"); 就可以提取你的参数,用EL表达式也可以:${param.par}

不写在表单里的话,不需要使用form标签,直接是一个超链接就可以,不过参数会显示在地址栏里,我建议你补充一下问题,你的接受端是不是有问题,这种事,应该是某个细节弄错了。

1)把get改成post;
2)接受参数应该是用request.getParameter("id");
不要用成request.getAttribute("id");
3)另外在接受页面还要加上判空语句,即所有的java语句应该都是在
if(request.getParameter("id")!=null)